<template>
  <MLoading></MLoading>
  <MMessage></MMessage>
</template>
<script setup lang="ts" name="BottomButton">
// interface BasicComponents {
//   loadingOther?: boolean;
// }
// 接受父组件参数，配置默认值
// const props = withDefaults(defineProps<BasicComponents>(), {
//   loadingOther: true
// });
// // 进度
// let percentVal = ref(10);
// // 包总大小
// let sumSize: any = ref(0);
// onBeforeMount(async () => init());

// const init = async () => {
//   if (!props.loadingOther) return;
//   const authStore = useAuthStore();
//   if (authStore.roles.length > 0 || authStore.getAuth === 1) return;
//   // 设置为1 避免多个引入组件导致重复调用权限接口
//   authStore.setGetAuth(1);

//   if (!isAPP()) {
//     const userStore = useUserStore();

//     // 获取用户权限
//     const auth = await userGetAuthBySysUser({ username: userStore.username });
//     useAuthStore().getAuthBySysUser(auth);
//     const globalStore = useGlobalStore();
//     // 查询版本号时不在请求页面
//     if (globalStore.getVersion) return;
//     globalStore.setGlobalState("getVersion", true);
//     const data: any = await versionSearch();
//     globalStore.setGlobalState("getVersion", false);
//     const oldVersion = uni.getStorageSync("version");
//     authStore.setGetAuth(0);

//     if (data.version !== oldVersion) {
//       globalStore.setMessage("版本更新,即将返回首页并刷新页面");
//       uni.setStorageSync("version", data.version + "");
//       uni.setStorageSync("update_page", true);
//       setTimeout(() => {
//         uni.reLaunch({
//           url: "/pages/home/index"
//         });
//       }, 500);
//     }
//   } else {
//     plus.runtime.getProperty(plus.runtime.appid, async info => {
//       const data: any = await versionSearch();

//       if (data.version + "" !== info.versionCode) {
//         const globalStore = useGlobalStore();
//         uni.showModal({
//           title: "提示",
//           content: "发现新的应用安装包，点击确定立即更新",
//           success: function (res) {
//             authStore.setGetAuth(0);
//             if (res.confirm) {
//               globalStore.loading = true;
//               globalStore.loadingMessage = `下载更新包中...${percentVal.value}% 总大小0MB`;

//               let task = plus.downloader.createDownload("http://mes.cnrecyc.com/app/apk/rsk.apk", {}, function (d, status) {
//                 // 下载完成
//                 if (status == 200) {
//                   plus.runtime.install(
//                     plus.io.convertLocalFileSystemURL(d.filename),
//                     {},
//                     () => null,
//                     function (error) {
//                       console.log(error, "error");

//                       uni.showToast({
//                         title: "安装失败",
//                         duration: 1500
//                       });
//                     }
//                   );
//                 } else {
//                   uni.showToast({
//                     title: "更新失败",
//                     duration: 1500
//                   });
//                 }
//               });

//               task.start(); // 下载任务开始下载
//               // 关于进度的获取是使用定时器不断获取已经下载的文件的大小，再对比总大小即可
//               let timer = setInterval(() => {
//                 let percent: any = (task.downloadedSize / task.totalSize).toFixed(2); // fileSize文件总大小，后端返回的
//                 sumSize.value = (task.totalSize / 1024 / 1024).toFixed(1) + "MB";
//                 percentVal.value = Math.floor(percent * 100); // 转成整数展示
//                 console.log(percentVal.value, "percentVal.value");
//                 globalStore.loadingMessage = `下载中... ${percentVal.value}% 总大小${sumSize.value}`;

//                 if (percent >= 1) {
//                   // 注意百分比，及时清除定时器即可
//                   clearInterval(timer);
//                   globalStore.loadingMessage = "";
//                   globalStore.loading = false;
//                 }
//               }, 500);
//             } else if (res.cancel) {
//               authStore.setGetAuth(0);
//               console.log("用户点击取消");
//             }
//           }
//         });
//       }
//     });
//   }
// };
</script>
